//
//  ViewController.m
//  地图笔记
//
//  Created by apple on 15/8/6.
//  Copyright (c) 2015年 apple. All rights reserved.
/*
 核心定位：
 
 首先我们要了解CLLocationManager这个类。我感觉这个类应该就是用来管理
 The CLLocationManager object is your entry point to the location service.
 这句话就是描述这个这个类的作用
 
 
 
 关于iOS8和IOS7定位服务授权的问题：
 ios7上是自动去申请用户授权；
 iOS8上需要app手动去申请用户授权；
 
 如何，申请授权呢？
 
 */

#import "ViewController.h"
#import <CoreLocation/CoreLocation.h>
@interface ViewController ()<CLLocationManagerDelegate>

//这个东西是用来
@property (strong,nonatomic)CLLocationManager *manager;


@end

@implementation ViewController

- (void)viewDidLoad
{
    [super viewDidLoad];
    
    //1，判断系统定位服务系统是否启用
    
    if(![CLLocationManager locationServicesEnabled])
    {
        NSLog(@"GPS定位没有打开");
        return;
    }
    
    //这个是用来判断系统版本是多少
    if([UIDevice currentDevice].systemVersion.floatValue >= 8.0)
    {
        //主动申请用户授权
        
        //这个是指仅能在前台的时候才能使用用户授权
        [self.manager requestWhenInUseAuthorization];
    }
    else
    {
        //这句话是指开始更新位置
        [self.manager startUpdatingLocation];
    }
   
}


#pragma 代理方法

//这个方法是当位置更新的时候会调用。
- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations
{
    //有一个需要注意的是，locations，这个参数指的是保存CLLocation的数组
    
    //获取最新位置的信息应该是最后一个对象。
}


- (void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error
{
    if (error.code == kCLErrorDenied)
    {
        NSLog(@"没有获得用户授权");
        //并且在这里提醒用户允许app定位授权
    }
}


- (void)locationManager:(CLLocationManager *)manager didChangeAuthorizationStatus:(CLAuthorizationStatus)status
{
    //就是两个情况，一个是拒绝，还有一个是授权的情况
}



























@end
